The amount of memory available to a computer (and the relative speeds of the types of such memory) influences the speed at which a computer is able to execute a software application. Additionally, the organization of stored data and code within a computer's memory is important to the relative speed in which a computer is able to access and manipulate the stored data and code. Randomly or incoherently organized stored data and code often results in inefficient accesses of the stored data and code. Such inefficient accesses may include cache misses and virtual memory page swapping, which may slow the execution of a software application by a computer. Increasing the amount of fast memory available to the computer often increases the speed at which a computer is able to execute a software application. Additional gains in processing efficiency may be gained by arranging the stored data and code so that the stored data and code may be efficiently accessed.